SUBROUTINE SUBR_STRUCT(OBJ) BIND(C)
  USE, INTRINSIC :: ISO_C_BINDING
  IMPLICIT NONE

  TYPE, BIND(C) :: VECTOR
  INTEGER (C_INT) :: LEN
  TYPE (C_PTR) :: DATA
END TYPE VECTOR

TYPE (VECTOR), INTENT(IN) :: OBJ
REAL (C_FLOAT), POINTER :: ARR(:)

CALL C_F_POINTER (OBJ%DATA, ARR, (/OBJ%LEN/))

PRINT *, ARR

END SUBROUTINE
